package xyz.zeer.endangeredanimal;

import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.fragment.app.Fragment;
import androidx.recyclerview.widget.LinearLayoutManager;
import androidx.recyclerview.widget.RecyclerView;

import java.util.ArrayList;

public class ThreatFragment extends Fragment implements ThreatAdapter.SelectedImage{

    private RecyclerView yrs_threatsRecyclerView;
    private ThreatAdapter yrs_threatsAdapter;
    private ArrayList<ThreatModel> yrs_threatsList;

    @Nullable
    @Override
    public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
        final View view = inflater.inflate(R.layout.yrs_threat_fragment, container, false);
        yrs_threatsRecyclerView = view.findViewById(R.id.recyclerViewFacts);

        addingFacts();
        buildRecyclerViewFacts();

        return view;
    }

    private void buildRecyclerViewFacts() {
        LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this.getActivity());
        linearLayoutManager.setOrientation(RecyclerView.VERTICAL);
        yrs_threatsRecyclerView.setLayoutManager(linearLayoutManager);
        yrs_threatsAdapter = new ThreatAdapter(yrs_threatsList, getContext(), this);
        yrs_threatsRecyclerView.setAdapter(yrs_threatsAdapter);
    }

    private void addingFacts() {
        yrs_threatsList = new ArrayList<>();
        yrs_threatsList.add(new ThreatModel(R.drawable.african_forest_elephant,
                "森林象主要受到偷猎丛林肉和象牙的威胁。每年有数以万计的大象被杀死，以满足国际上对象牙的非法需求。2012年2月，入侵的苏丹偷猎者在喀麦隆的一个国家公园的一次突袭中屠杀了200多头大象。许多政府没有足够的财政或人力资源来保护大象，进行定期种群估计或执行法规。这使得偷猎成为一个长期的、重大的问题。一些非洲国家的国内象牙市场蓬勃发展，但不受监控，其中一些国家自己的大象所剩无几，这也助长了非法国际贸易。来自该领域的轶事证据表明，中非的许多大象也被猎杀以获取它们的肉，但问题的严重程度尚未确定。",
                 getString(R.string.African_forest_elephant)));
        yrs_threatsList.add(new ThreatModel(R.drawable.amur_leopard,
                "俄罗斯和中国的阿穆尔河仍有大片合适的栖息地。在中国，猎物基础不足以维持大量的豹子和老虎。如果采取措施限制偷猎猎物种，并对森林进行更可持续的砍伐，猎物种群将恢复。为了让阿穆尔豹长期生存，它需要重新填充它以前的范围。但要做到这一点，猎物种群需要首先恢复。",
                getString(R.string.Amur_Leopard)));
        yrs_threatsList.add(new ThreatModel(R.drawable.black_rhino,
                "黑犀牛大多是独居和领地的。某些地点的高人口密度导致繁殖率降低，并增加疾病传播或伤害的可能性。随着人类在传统犀牛栖息地的足迹增加，在其以前的范围内找到合适且受到良好保护的地点变得更加困难，以便通过从人口过多的地方重新安置个体来开始新的犀牛种群。",
                getString(R.string.Black_Rhino)));
        yrs_threatsList.add(new ThreatModel(R.drawable.bornean_orangutan,
                "当猩猩进入农业区（如油棕种植园）并摧毁庄稼时，它们有时会被枪杀以示报复。这尤其发生在猩猩无法在森林中找到所需食物的困难时期。",
                getString(R.string.Bornean_Orangutan)));
        yrs_threatsList.add(new ThreatModel(R.drawable.cross_river_gorilla,
                "种群面临近亲繁殖和遗传多样性丧失的风险，因为克罗斯河大猩猩很少，而且它们生活在很少互动的群体中。",
                getString(R.string.Cross_River_Gorilla)));
        yrs_threatsList.add(new ThreatModel(R.drawable.eastern_lowland_gorilla,
                "多年的政治不稳定和冲突使刚果国家公园网络处于被忽视的状态。人类已经能够侵占Kahuzi-Biega国家公园，捕猎大猩猩并建立非法地雷。此外，军事活动和重型武器的存在加剧了该地区的动乱，使保护工作变得困难。",
                getString(R.string.Eastern_Lowland_Gorilla)));
        yrs_threatsList.add(new ThreatModel(R.drawable.hawksbill_turtle,
                "玳瑁特别容易被刺网缠住，并被鱼钩意外捕获。海龟需要到达水面呼吸，因此许多海龟一旦被捕获就会淹死。这被称为兼捕，对玳瑁龟构成严重威胁。随着捕鱼活动的扩大，这种威胁是一个更大的问题。",
                getString(R.string.Hawksbill_Turtle)));
        yrs_threatsList.add(new ThreatModel(R.drawable.javan_rhino,
                "爪哇犀牛在殖民时期被战利品猎人杀死。它们还作为农业害虫和角被杀死，角是亚洲传统医学中非常珍贵的商品。偷猎仍然是一个始终存在的威胁。",
                getString(R.string.Javan_Rhino)));
        yrs_threatsList.add(new ThreatModel(R.drawable.orangutan,
                "亚洲唯一的类人猿的栖息地正在电锯下迅速消失，为油棕种植园和其他农业种植园让路。保护区内的非法采伐和猩猩居住的特许经营区内不可持续的采伐仍然是对其生存的主要威胁。今天，超过50%的猩猩是在木材，棕榈油和采矿公司管理的森林保护区之外发现的。",
                getString(R.string.Orangutan)));
        yrs_threatsList.add(new ThreatModel(R.drawable.saola,
                "Saola经常被森林中的野猪，水鹿或麂鹿圈套所捕获。当地村民设置了一些圈套，用于维持生计和保护作物。最近，在中国传统医药需求以及越南和老挝的餐馆和食品市场的推动下，为供应非法野生动植物贸易而狩猎的低地人口增加，导致狩猎量大幅增加。",
                getString(R.string.Saola)));
        yrs_threatsList.add(new ThreatModel(R.drawable.sumatran_elephant,
                "苏门答腊象通常有较小的象牙，但它们足以诱使偷猎者杀死动物并在非法象牙市场上出售象牙。只有雄性亚洲象有象牙，因此每次偷猎事件都会进一步扭曲性别比例，进一步限制该物种的繁殖率。",
                getString(R.string.Sumatran_Elephant)));
        yrs_threatsList.add(new ThreatModel(R.drawable.sumatran_orangutan,
                "尽管印度尼西亚自1931年以来受到法律保护，但猩猩仍然从野外捕获并作为身份象征饲养在家庭中。在一些地区，猩猩被猎杀作为食物。全球野生动物监测网络TRAFFIC的调查显示，对这种非法贩运缺乏执法对猩猩构成了严重威胁。雌性每八九年只生一个婴儿，这使得它们的种群非常容易受到甚至非常低水平的狩猎的影响。专家估计，即使每年只有1%的雌性因狩猎或其他非自然原因而死亡，也可能使种群走上不可逆转的灭绝轨迹。",
                getString(R.string.Sumatran_Orangutan)));
        yrs_threatsList.add(new ThreatModel(R.drawable.sumatran_rhino,
                "由于数量少，繁殖对相互相遇的可能性低，以及老年雌性的生殖问题，我们认为在大多数地方，野生苏门答腊犀牛的繁殖是最小的。大多数（如果不是全部）剩余的亚种群太小，无法成为可行的长期繁殖种群。",
                getString(R.string.Sumatran_Rhino)));
        yrs_threatsList.add(new ThreatModel(R.drawable.sunda_tiger,
                "苏门答腊虎的栖息地因农业（特别是油棕）、种植园和定居而急剧减少。在岛上的许多地方，非法采伐木材和森林转化已经失控。从1985年到2014年，该岛的森林覆盖率从58%下降到26%。甚至保护区也面临问题。此外，森林的转换使国家公园彼此隔离，以及老虎等物种种群需要大面积繁殖、喂养和分散。",
                getString(R.string.Sunda_Tiger)));
        yrs_threatsList.add(new ThreatModel(R.drawable.vaquita,
                "如果不立即消除副渔获物，小头鼠海豚将灭绝。几乎五分之一的小头鼠海豚被缠住并淹死在用于其他海洋物种的刺网中，如石首鱼，石首鱼是一种在加利福尼亚湾上游发现的极度濒危鱼类。缠绕在石首鱼的刺网中是使小头鼠海豚在 1970 年代中期达到低水平的主要原因。石首鱼在1970年代中期被过度捕捞，并于1975年被墨西哥列为濒危物种，1979年被美国列为濒危物种。",
                getString(R.string.Vaquita)));
        yrs_threatsList.add(new ThreatModel(R.drawable.western_lowland_gorilla,
                "狩猎和杀害大猩猩是非法的，但动物仍然被杀死用于丛林肉或在捕获小大猩猩作为宠物期间。在刚果东北部，该地区每年约有5%的西部低地大猩猩被杀死。木材和其他公司开辟了曾经偏远的森林地区，为偷猎和食用森林猎物贸易提供了便利。偷猎也给人类带来危险，因为人们认为埃博拉病毒可能通过屠宰和处理大猩猩和其他灵长类动物的肉传播。",
                getString(R.string.Western_Lowland_Gorilla)));
        yrs_threatsList.add(new ThreatModel(R.drawable.yangtze_finless_porpoise,
                "江豚需要充足的食物供应才能生存。白暨豚食物供应的破坏是其灭绝的核心。过度捕捞是导致江豚食物供应减少的主要因素，但污染和船只移动也是因素。",
                getString(R.string.Yangtze_Finless_Porpoise)));
    }

    @Override
    public void selectedImage(ThreatModel yrs_threatsModel, Context context) {
        Intent intent = new Intent(getContext(), ImageActivity.class);
        intent.putExtra("Image", yrs_threatsModel.getAnimalImageResource());
        Log.e("Facts Fragment", "selectedImage: " + yrs_threatsModel.getAnimalName());
        startActivity(intent);
    }
}
